﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MathNet.Numerics.LinearAlgebra.Generic;

namespace Beaker.Math
{
	public struct Vector3
	{
		private Matrix<double> _m;
		private readonly double _x;
		private readonly double _y;
		private readonly double _z;

		/// <summary>
		/// Create a new Vector3
		/// </summary>
		/// <param name="x">The x-coordinate of the new vector</param>
		/// <param name="y">The y-coordinate of the new vector</param>
		/// <param name="z">The z-coordinate of the new vector</param>
		public Vector3( double x, double y, double z )
		{
			_x = x;
			_y = y;
			_z = z;
		}

		/// <summary>
		/// Gets the X coordinate of the vector
		/// </summary>
		public double X
		{
			get { return _x; }
		}

		/// <summary>
		/// Gets the Y coordinate of the vector
		/// </summary>
		public double Y
		{
			get { return _y; }
		}

		/// <summary>
		/// Gets the Z coordinate of the vector
		/// </summary>
		public double Z
		{
			get { return _z; }
		}
	}

}
